package snafu.implementation.actions.turn.left;

import java.util.List;

import snafu.framework.actions.IntentionItself;
import snafu.framework.actions.IntentionView;
import snafu.framework.agents.AgentState;
import snafu.framework.objects.WorldObject;
import snafu.framework.view.Access;
import snafu.framework.worlds.WorldMap;

public class TurnLeftIntentionItself extends IntentionItself<TurnLeftAction> implements TurnLeftIntention {

	public TurnLeftIntentionItself(Access privacy) {
		super(privacy);
	}

	@Override
	public TurnLeftAction createAction(List<WorldObject> targets) {
		return new TurnLeftAction(targets, this);
	}

	@Override
	protected boolean checkApplicability(WorldMap perception, AgentState agent,
			List<WorldObject> targets) {
		return true;
	}

	@Override
	public IntentionView<TurnLeftAction> createView(Access access) {
		return new TurnLeftIntentionView(access, this);
	}

}
